def read_file(filename):
    '''
    读取库存文件并返回字典
    :param filename: 文件名
    :return:
    '''
    try:
        with open(filename, "r") as file:
            file_line = file.readlines()
            # 初始化库存信息
            order = {}
            for line in file_line:
                name, stock = line.strip().split(",")
                order[name] = int(stock)
    except FileNotFoundError:
        print(f"文件 '{filename}' 未找到，将创建新文件。")
        with open(filename, "w") as file:
            pass
        return {}

def write_file(filename, order):
    '''
    将库存数据写入文件
    :param filename: 文件名
    :param order: 库存信息（字典）
    :return:
    '''
    with open(filename, "w") as file:
        for name, stock in order.items():
            file.write(f"{name},{stock}\n")
def get_order(order):
    '''
    查询库存
    :param order: 库存信息（字典）
    :return:
    '''
    if not order:
        print("当前库存为空！")
    else:
        print("\n商品库存：")
        for name, stock in order.items():
            print(f"{name}: {stock} 件")

def update_stock(order, product_name, new_stock):
    '''
    更新库存
    :param order: 库存信息（字典）
    :param product_name: 商品名称
    :param new_stock: 新库存数量
    :return:
    '''
    # 如果商品名称不在库存字典中
    if product_name not in order:
        # 抛出自定义异常
        print(f"商品 '{product_name}' 不存在！")
    else:
        # 更新库存
        order[product_name] = new_stock
        print(f"商品 '{product_name}' 的库存已更新为 {new_stock} 件。")


def add_product(order, product_name, stock_order):
    '''
    添加新商品
    :param order: 库存信息（字典）
    :param product_name: 商品名称
    :param stock_order: 商品库存数量
    :return:
    '''
    if product_name in order:
        print(f"商品 '{product_name}' 已存在！无法重复添加。")
    else:
        order[product_name] = stock_order
        print(f"已添加商品 '{product_name}'，库存数量为 {stock_order} 件。")
